package com.google.gwt.homepage.smile.shared;



import java.io.Serializable;
import java.util.List;




import javax.jdo.annotations.PersistenceCapable;
import javax.jdo.annotations.Persistent;
import javax.jdo.annotations.PrimaryKey;

@SuppressWarnings("serial")
@PersistenceCapable(detachable="true")
public class SajuDataTable  implements Serializable{
	
	@PrimaryKey
	@Persistent
	private String email="";//이메일
	
	@Persistent
	private String solar_year="";//양력 년
	@Persistent
	private String solar_month="";//양력 월
	@Persistent
	private String solar_date="";//양력 일
    
	@Persistent
	private String birth_time="";//태어난 시간
    
	@Persistent
	private String lunar_year="";//음력 년
	@Persistent
	private String lunar_month="";//음력 월
	@Persistent
	private String lunar_date="";//음력 일
	@Persistent
	private  Boolean isYunMonth=false;//음력 윤
    
    

	@Persistent
	private String yearSkyVal="";//년 천간
	@Persistent
	private String yearLandVal="";//년 지간
	@Persistent
	private String monthSkyVal="";//월 천간
	@Persistent
	private String monthLandVal="";//월 지간
	@Persistent
	private String dateSkyVal="";//일 천간
	@Persistent
	private String dateLandVal="";//일 지간
	@Persistent
	private String timeSkyVal="";//시간 천간
	@Persistent
	private String timeLandVal="";//시간 지간
	
	
	@Persistent
	private String yearSkyPM="";//년 천간 +or-
	@Persistent
	private String yearLandPM="";//년 지간 +or-
	@Persistent
	private String monthSkyPM="";//월 천간 +or-
	@Persistent
	private String monthLandPM="";//월 지간 +or-
	@Persistent
	private String dateSkyPM="";//일 천간 +or-
	@Persistent
	private String dateLandPM="";//일 지간 +or-
	@Persistent
	private String timeSkyPM="";//시간 천간 +or-
	@Persistent
	private String timeLandPM="";//시간 지간 +or-
	
	@Persistent
	private String yearSky5hang="";//년 천간 오행
	@Persistent
	private String yearLand5hang="";//년 지간오행
	@Persistent
	private String monthSky5hang="";//월 천간 오행
	@Persistent
	private String monthLand5hang="";//월 지간 오행
	@Persistent
	private String dateSky5hang="";//일 천간 오행
	@Persistent
	private String dateLand5hang="";//일 지간 오행
	@Persistent
	private String timeSky5hang="";//시간 천간 오행
	@Persistent
	private String timeLand5hang="";//시간 지간 오행
	
	@Persistent
	private String yoyakDesc="";//사주 요약
	
	@Persistent
	private int plusPercent=0;//+%
	@Persistent
	private int minusPercent=0;//-%
	
	@Persistent
	private int mokPlus=0;
	@Persistent
	private int whaPlus=0;
	@Persistent
	private int geumPlus=0;
	@Persistent
	private int suPlus=0;
	
	@Persistent
	private int jamiMinus=0;
	@Persistent
	private int chukohMinus=0;
	@Persistent
	private int inyuMinus=0;
	@Persistent
	private int myosinMinus=0;
	@Persistent
	private int jinhaeMinus=0;
	@Persistent
	private int sasulMinus=0;
	
	@Persistent
    private int[] ohhangCnt ={0,0,0,0,0};//5행 갯수
	
	@Persistent
	private float[] ohhangCntAvg ={0,0,0,0,0};//2개 사주의 합에서 5행 갯수 평균
	
	@Persistent
	private String skyHab="";//갑기, 을경, 병신, 정임, 무계
	
	@Persistent
	private String skyChung="";//갑경, 을신, 병임, 정계
	
	@Persistent
	private Boolean neverMarriage=false;//불혼 계패살
	
	@Persistent
	private int totalScore=0;//총점
	
	
	@Persistent
	private String  sex="";//성별
	
	@Persistent
	private String  job="";//직업
	
	@Persistent
	private String  addr1="";//사는 곳
	
	
	
	@Persistent(serialized = "true")
	private List<FriendTable> friends=null;
	
	public SajuDataTable() {}
	
	public SajuDataTable(String solar_year, String solar_month, String solar_date, String birth_time) {
		this.solar_year = solar_year;
		this.solar_month = solar_month;
		this.solar_date = solar_date;
		this.birth_time = birth_time;
	}

	
	public String getEmail() {
		return email;
	}

	public void setEmail(String email) {
		this.email = email;
	}
	
	
	public String getSolar_year() {
		return solar_year;
	}

	public void setSolar_year(String solar_year) {
		this.solar_year = solar_year;
	}

	public String getSolar_month() {
		return solar_month;
	}

	public void setSolar_month(String solar_month) {
		this.solar_month = solar_month;
	}

	public String getSolar_date() {
		return solar_date;
	}

	public void setSolar_date(String solar_date) {
		this.solar_date = solar_date;
	}

	public String getBirth_time() {
		return birth_time;
	}

	public void setBirth_time(String birth_time) {
		this.birth_time = birth_time;
	}

	public String getLunar_year() {
		return lunar_year;
	}

	public void setLunar_year(String lunar_year) {
		this.lunar_year = lunar_year;
	}

	public String getLunar_month() {
		return lunar_month;
	}

	public void setLunar_month(String lunar_month) {
		this.lunar_month = lunar_month;
	}

	public String getLunar_date() {
		return lunar_date;
	}

	public void setLunar_date(String lunar_date) {
		this.lunar_date = lunar_date;
	}

	public Boolean isYunMonth() {
		return isYunMonth;
	}

	public void setYunMonth(Boolean isYunMonth) {
		this.isYunMonth = isYunMonth;
	}

	public String getYearSkyVal() {
		return yearSkyVal;
	}

	public void setYearSkyVal(String yearSkyVal) {
		this.yearSkyVal = yearSkyVal;
	}

	public String getYearLandVal() {
		return yearLandVal;
	}

	public void setYearLandVal(String yearLandVal) {
		this.yearLandVal = yearLandVal;
	}

	public String getMonthSkyVal() {
		return monthSkyVal;
	}

	public void setMonthSkyVal(String monthSkyVal) {
		this.monthSkyVal = monthSkyVal;
	}

	public String getMonthLandVal() {
		return monthLandVal;
	}

	public void setMonthLandVal(String monthLandVal) {
		this.monthLandVal = monthLandVal;
	}

	public String getDateSkyVal() {
		return dateSkyVal;
	}

	public void setDateSkyVal(String dateSkyVal) {
		this.dateSkyVal = dateSkyVal;
	}

	public String getDateLandVal() {
		return dateLandVal;
	}

	public void setDateLandVal(String dateLandVal) {
		this.dateLandVal = dateLandVal;
	}

	public String getYearSkyPM() {
		return yearSkyPM;
	}

	public void setYearSkyPM(String yearSkyPM) {
		this.yearSkyPM = yearSkyPM;
	}

	public String getYearLandPM() {
		return yearLandPM;
	}

	public void setYearLandPM(String yearLandPM) {
		this.yearLandPM = yearLandPM;
	}

	public String getMonthSkyPM() {
		return monthSkyPM;
	}

	public void setMonthSkyPM(String monthSkyPM) {
		this.monthSkyPM = monthSkyPM;
	}

	public String getMonthLandPM() {
		return monthLandPM;
	}

	public void setMonthLandPM(String monthLandPM) {
		this.monthLandPM = monthLandPM;
	}

	public String getDateSkyPM() {
		return dateSkyPM;
	}

	public void setDateSkyPM(String dateSkyPM) {
		this.dateSkyPM = dateSkyPM;
	}

	public String getDateLandPM() {
		return dateLandPM;
	}

	public void setDateLandPM(String dateLandPM) {
		this.dateLandPM = dateLandPM;
	}

	public String getYearSky5hang() {
		return yearSky5hang;
	}

	public void setYearSky5hang(String yearSky5hang) {
		this.yearSky5hang = yearSky5hang;
	}

	public String getYearLand5hang() {
		return yearLand5hang;
	}

	public void setYearLand5hang(String yearLand5hang) {
		this.yearLand5hang = yearLand5hang;
	}

	public String getMonthSky5hang() {
		return monthSky5hang;
	}

	public void setMonthSky5hang(String monthSky5hang) {
		this.monthSky5hang = monthSky5hang;
	}

	public String getMonthLand5hang() {
		return monthLand5hang;
	}

	public void setMonthLand5hang(String monthLand5hang) {
		this.monthLand5hang = monthLand5hang;
	}

	public String getDateSky5hang() {
		return dateSky5hang;
	}

	public void setDateSky5hang(String dateSky5hang) {
		this.dateSky5hang = dateSky5hang;
	}

	public String getDateLand5hang() {
		return dateLand5hang;
	}

	public void setDateLand5hang(String dateLand5hang) {
		this.dateLand5hang = dateLand5hang;
	}

	public String getYoyakDesc() {
		return yoyakDesc;
	}

	public void setYoyakDesc(String yoyakDesc) {
		this.yoyakDesc = yoyakDesc;
	}

	public int getPlusPercent() {
		return plusPercent;
	}

	public void setPlusPercent(int plusPercent) {
		this.plusPercent = plusPercent;
	}

	public int getMinusPercent() {
		return minusPercent;
	}

	public void setMinusPercent(int minusPercent) {
		this.minusPercent = minusPercent;
	}



	public int getMokPlus() {
		return mokPlus;
	}

	public void setMokPlus(int mokPlus) {
		this.mokPlus = mokPlus;
	}

	public int getWhaPlus() {
		return whaPlus;
	}

	public void setWhaPlus(int whaPlus) {
		this.whaPlus = whaPlus;
	}

	public int getGeumPlus() {
		return geumPlus;
	}

	public void setGeumPlus(int geumPlus) {
		this.geumPlus = geumPlus;
	}

	public int getSuPlus() {
		return suPlus;
	}

	public void setSuPlus(int suPlus) {
		this.suPlus = suPlus;
	}

	public int getJamiMinus() {
		return jamiMinus;
	}

	public void setJamiMinus(int jamiMinus) {
		this.jamiMinus = jamiMinus;
	}

	public int getChukohMinus() {
		return chukohMinus;
	}

	public void setChukohMinus(int chukohMinus) {
		this.chukohMinus = chukohMinus;
	}

	public int getInyuMinus() {
		return inyuMinus;
	}

	public void setInyuMinus(int inyuMinus) {
		this.inyuMinus = inyuMinus;
	}

	public int getMyosinMinus() {
		return myosinMinus;
	}

	public void setMyosinMinus(int myosinMinus) {
		this.myosinMinus = myosinMinus;
	}

	public int getJinhaeMinus() {
		return jinhaeMinus;
	}

	public void setJinhaeMinus(int jinhaeMinus) {
		this.jinhaeMinus = jinhaeMinus;
	}

	public int getSasulMinus() {
		return sasulMinus;
	}

	public void setSasulMinus(int sasulMinus) {
		this.sasulMinus = sasulMinus;
	}

	public int[] getOhhangCnt() {
		return ohhangCnt;
	}

	public void setOhhangCnt(int[] ohhangCnt) {
		this.ohhangCnt = ohhangCnt;
	}
	
	//해당 index의 오행값을 ++한다.
	public void incOhhangCnt(int index) {
		this.ohhangCnt[index]++;
	}

	public String getTimeSkyVal() {
		return timeSkyVal;
	}

	public void setTimeSkyVal(String timeSkyVal) {
		this.timeSkyVal = timeSkyVal;
	}

	public String getTimeLandVal() {
		return timeLandVal;
	}

	public void setTimeLandVal(String timeLandVal) {
		this.timeLandVal = timeLandVal;
	}

	public String getTimeSkyPM() {
		return timeSkyPM;
	}

	public void setTimeSkyPM(String timeSkyPM) {
		this.timeSkyPM = timeSkyPM;
	}

	public String getTimeLandPM() {
		return timeLandPM;
	}

	public void setTimeLandPM(String timeLandPM) {
		this.timeLandPM = timeLandPM;
	}

	public String getTimeSky5hang() {
		return timeSky5hang;
	}

	public void setTimeSky5hang(String timeSky5hang) {
		this.timeSky5hang = timeSky5hang;
	}

	public String getTimeLand5hang() {
		return timeLand5hang;
	}

	public void setTimeLand5hang(String timeLand5hang) {
		this.timeLand5hang = timeLand5hang;
	}

	public float[] getOhhangCntAvg() {
		return ohhangCntAvg;
	}

	public void setOhhangCntAvg(float[] ohhangCntAvg) {
		this.ohhangCntAvg = ohhangCntAvg;
	}

	public List<FriendTable> getFriends() {
		return friends;
	}

	public void setFriends(List<FriendTable> friends) {
		this.friends = friends;
	}

	public String getSkyHab() {
		return skyHab;
	}

	public void setSkyHab(String skyHab) {
		this.skyHab = skyHab;
	}

	public String getSkyChung() {
		return skyChung;
	}

	public void setSkyChung(String skyChung) {
		this.skyChung = skyChung;
	}

	public Boolean isNeverMarriage() {
		return neverMarriage;
	}

	public void setNeverMarriage(Boolean neverMarriage) {
		this.neverMarriage = neverMarriage;
	}

	public Integer getTotalScore() {
		return totalScore;
	}

	public void setTotalScore(Integer totalScore) {
		this.totalScore = totalScore;
	}

	public String getSex() {
		return sex;
	}

	public void setSex(String sex) {
		this.sex = sex;
	}

	public String getJob() {
		return job;
	}

	public void setJob(String job) {
		this.job = job;
	}

	public String getAddr1() {
		return addr1;
	}

	public void setAddr1(String addr1) {
		this.addr1 = addr1;
	}  
		
}
